www.gusucode.com > XerCMS 携云PHP企业建站程序 v2015PHP源码程序 > XerCMS 携云PHP企业建站程序 v2015/XerCMS_v20150724/XerCMS_v20150724/XerCMS/Services/admin/libs/XerCMS_model.php

    <?php
/**
 * @name     XERCMS
 * @author   Arno <XerCMS@163.com> [QQ:1328013]
 * @version  1.0.0
 * @link     http://www.XerCMS.com
 */
 
!defined('XERCMS') && exit('Access Denied');

class Model
{
     static $error = null;
	
     static function data($id = '') {
	     if(empty($id)) {
			return DB::fetch_all('SELECT * FROM xercms_model ORDER BY id DESC');
		} else return DB::result('SELECT * FROM xercms_model'.(empty($id) ? '' : ' WHERE id = \''.$id.'\'').' ORDER BY id DESC');
	}
	 
 
	static function build() {
		$models = DB::fetch_all('SELECT * FROM xercms_model');
		foreach($models as $k=>$v) {
		     $arr1[$v['id']] =  array('table'=>$v['table'],'name'=>$v['name']);
			if($v['state']) {
				$arr2[$v['id']] = array('table'=>$v['table'],'name'=>$v['name']);
			 }
		}
		dfile('XerCMS/Data/archives/models.php','<?php !defined(\'XERCMS\') && exit(\'Access Denied\');return '.AtoS($arr1).';?>');
		dfile('XerCMS/Data/#sVar/models.php','<?php !defined(\'XERCMS\') && exit(\'Access Denied\');return '.AtoS($arr2).';?>');
	}
	 	 
		 
      static function delete($mid,$table) {
	     $arc = DB::result_first('SELECT count(*) FROM xercms_archives WHERE model = \''.$mid.'\'');
	     if($arc > 0) {
		    self::$error = ' 有该模型相应的档案,无法删除。';return;
		}
	     DB::delete('xercms_model',array('id'=>$mid));
		DB::query('DROP TABLE xercms_comment_'.$table);
		DB::query('DROP TABLE xercms_data_'.$table);
          
		delfile(INC.'Data/archives/model/'.$table.'.php');
		delfile(INC.'Data/archives/model/template/'.$table.'.htm');
		delfile(INC.'Data/archives/mc/'.$table.'.php');
		self::build();
	}
	 
     static function check($table) {
		if(file_exists(INC.'Data/archives/model/'.$table.'.php')) {
			//admintips('exists_table',dreferer());
			return true;
		} else return false;
	}
      
	static function insert($data) {		
		$data['struct'] = null;
          $data['uid'] = X::$G['uid'];
		$data['time'] = X::$G['time'];
		$id = DB::insert('xercms_model',$data);
		if($id) {
			//$models = ini('common/model');
		  	dfile('XerCMS/Data/archives/mc/'.$data['table'].'.php','<?php !defined(\'XERCMS\') && exit(\'Access Denied\');return Array();?>');
            	self::build();$model = array('id'=>$id,'name'=>$data['name'],'table'=>$data['table'],'state'=>1,'separate'=>0,'struct'=>array());
		  	dfile('XerCMS/Data/archives/model/'.$data['table'].'.php','<?php !defined(\'XERCMS\') && exit(\'Access Denied\');return '.AtoS($model).';?>');
		  	//self::createtpl($data['table'],$data['struct'],$data['name']);
	       	Struct::create($data['table']);
		  	return $id;
		} else return null;
	}
}
?>